//
// Created by 17775 on 2024/7/30.
//

#ifndef RAYCI_RAYCIDATARECEIVEQUEUEOBSERVER_H
#define RAYCI_RAYCIDATARECEIVEQUEUEOBSERVER_H

#include <QtGui>
#include "AbstractQueueObserver.h"
#include "RayCiDataReceiveListener.h"

class RayCiDataReceiveQueueObserver : public AbstractQueueObserver<RayCiDataReceiveListener, std::shared_ptr<LiveModeFloatData<std::vector<float>>>> {
protected:
    void notifyValueToListener(RayCiDataReceiveListener* listener, const std::shared_ptr<LiveModeFloatData<std::vector<float>>>& data) const override {
        listener->receiveMessage(data);
    }
};

//class RayCiDataReceiveQueueObserver : public AbstractQueueObserver<RayCiDataReceiveListener, const QImage> {
//protected:
//    void notifyValueToListener(RayCiDataReceiveListener* listener, const QImage &image) const override {
//        listener->receiveMessage(image);
//    }
//};


#endif //RAYCI_RAYCIDATARECEIVEQUEUEOBSERVER_H
